import router from '@/router'
import theAxios from 'axios'
import { Notify } from 'vant'
import { getToken } from './token'
const service = theAxios.create({
  baseURL: 'http://toutiao.itheima.net',
  timeout: 5000 // 5s超时时间（5s无响应判定超时）

})
service.interceptors.request.use(function (config) {
  // 发请求之前做些什么
  if (getToken()?.length > 0 && config.headers.Authorization === undefined) {
    // eslint-disable-next-line no-unused-expressions
    config.headers.Authorization === `Bearer ${getToken()}`
  }
  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
})
service.interceptors.response.use(function (config) {
  // 响应码为2xx，3xx进入这里
// 对响应数据做些什么
  return config
}, function (error) {
// 对响应错误做些什么 ,4xx.5xx
// 401表示身份信息过期
  if (error.response.status === 401) {
    Notify({ type: 'warning', message: '身份信息过期，请重新登录' })
    router.replace('/login')
  }
  return Promise.reject(error)
})
// export default ({ url, method = 'get', params = {}, data = {}, headers = {} }) => {
//   return axios({
//     url,
//     method,
//     params,
//     data,
//     headers
//   })
// }
// 1.创建axios实例
// const service = axios.create({
//   // 公共接口--url = base url + request url
//   baseURL: url,
//   // 超时时间 单位是ms，这里设置了5s的超时时间
//   timeout: 5 * 1000,

// })

export default service
